fileinfo           Return

FormにOpenFileDialog、Button、Label、を置き、OpenFileでFileを選択、Fileのサイズ、属性、作成時期など表示しました

左図は実行時の状態です
using System.Reflection.Emit;
using System.Windows.Forms;

namespace fileinfo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        static long d;
        string tani;
        string vol, vol1;
        float tmp0;


        private void convertStr(long dirsize)
        {
            int i = 0;
            float tmp,tmp1;
            tmp1= (float)dirsize;
            tmp = (float)dirsize;

            while (dirsize > 0)
            {
                tmp = tmp / 1024f;

                dirsize = dirsize / 1024;
                if (dirsize > 0)
                {
                    i++;
                    d = dirsize;
                    tmp0 = tmp;
                }

            }

            switch (i)
            {
                case 0:
                    tmp0 = tmp1;
                    tani = "Byte";
                    break;
                case 1:
                    tani = "KByte";
                    break;
                case 2:
                    tani = "MByte";
                    break;
                case 3:
                    tani = "GByte";
                    break;
                case 4:
                    tani = "TByte";
                    break;
            }
            vol = d.ToString() + "  " + tani;
            vol1 = String.Format("{0:0.00}", tmp0) + "  " + tani;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            float l;
            string s;

            openFileDialog1.FileName = "";
            openFileDialog1.ShowDialog();
            string fname = openFileDialog1.FileName;
            if (fname == "")
            {
                return;
            }
            System.IO.FileInfo fi = new System.IO.FileInfo(fname);


            fname = fname.Replace("\r\n", "");
            label1.Text = fname;
            fname = fname.Replace("\r\n", "");
            
            convertStr((long)fi.Length);

            label4.Text = vol1;


            label6.Text = fi.LastAccessTime.ToString();
            label8.Text = fi.CreationTime.ToString();
            label10.Text = fi.LastWriteTime.ToString();
            label11.Text = fi.Attributes.ToString();
        }


    private void button2_Click(object sender, EventArgs e)
        {
            Close();
        }
    }
}
左図はプログラム ソースです
System.IO.FileInfo fi = new System.IO.FileInfo(fname);で得られる情報は下図のようです


これを利用してFileの情報を表示しました
FileサイズはByteで、大きいサイズは private void convertStr(long dirsize) でK、M、GByteとに変換して表示しました